R=lambda:sorted(map(int,input().split()))
t,=R()
for _ in[0]*t:a,b=R();c,d=R();print('NYOE S'[b==d==a+c::2])
#include<iostream>
int main() {
int t;
std::cin >> t;
while (t--) {
int a, b, c, d;
std::cin >> a >> b >> c >> d;
if (a > b)
std::swap(a, b);
if (c > d)
std::swap(c, d);
if (a + c == b && b == d)
std::cout << "YES" << std::endl;
else std::cout << "NO" << std::endl;
}
}
501B - Misha and Changing Handles | 1496A - Split it |
1666L - Labyrinth | 1294B - Collecting Packages |
1642B - Power Walking | 1424M - Ancient Language |
600C - Make Palindrome | 1669D - Colorful Stamp |
1669B - Triple | 1669A - Division |
1669H - Maximal AND | 1669E - 2-Letter Strings |
483A - Counterexample | 3C - Tic-tac-toe |
1669F - Eating Candies | 1323B - Count Subrectangles |
991C - Candies | 1463A - Dungeon |
1671D - Insert a Progression | 1671A - String Building |
1671B - Consecutive Points Segment | 1671C - Dolce Vita |
1669G - Fall Down | 4D - Mysterious Present |
1316B - String Modification | 1204A - BowWow and the Timetable |
508B - Anton and currency you all know | 1672A - Log Chopping |
300A - Array | 48D - Permutations |